Definition of Done
How to determine if a component is complete
A component can be considered complete when it staisfies all of the requirements for Design, Developement, and Documentation. This is very heavily based on the work done by Emma Bostian.
Design
- Intended usage is understood
- Visual design is defined
- The various states (neutral, active, hover, focus, disabled) have been understood and defined.
- A basic API has been documented
Development
- The component has been successfully implemented in the UI Library
- The visual design is appropriate
- Each state (neutral, active, hover, focus, disabled) has been implemented,
- The API has been implmented matching the API philosophy
- The API has been documented by way of propTypes and comments on those proptypes
- The component has been tested across different viewports and browsers
Documentation
- Description of the component
- Table of properties, including
- property name
- property type
- default value
- required status
- description
- Interactive example/demo of component, including each variant of each prop
- Code snippets
- Usage guidelines